#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QTabWidget>
#include "sectionview.h"
#include "sectionmodel.h"
#include "abstractfileloader.h"
#include "hexview.h"
#include "codeview.h"

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow {
    Q_OBJECT
public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
private:
    void setupConnectors();
protected:
    void changeEvent(QEvent *e);
private slots:
    void slot_openFile();
    void setupSectionWindow(AbstractFileLoader* file);
    void createNewHexTab(AbstractFileLoader *file);
    void createCodeView(AbstractFileLoader *file);

private:
    Ui::MainWindow *ui;
    SectionView *sectionView;
    HexView *hexView;
    QTabWidget *tabWidget;
};

#endif // MAINWINDOW_H
